package com.evildog.workspace.system.application.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.evildog.workspace.dependencies.mybatis.object.BaseStatusDTO;
import com.evildog.workspace.dependencies.mybatis.object.LinkIdDTO;
import com.evildog.workspace.dependencies.mybatis.object.QueryConditionDTO;
import com.evildog.workspace.system.application.bo.ComponentPermissionListBO;
import com.evildog.workspace.system.application.dto.ComponentPermissionDTO;
import com.evildog.workspace.system.application.dto.ComponentPermissionListDTO;
import com.evildog.workspace.system.application.entity.ComponentPermission;

import java.util.List;

/**
 * <p>
 * componentPermission Service
 * </p>
 *
 * @author evildog
 * @since 2020-07-25
 */
public interface ComponentPermissionService extends IService<ComponentPermission> {

    /**
    * 自定义分页
    */
    List<ComponentPermissionListBO> getList(List<QueryConditionDTO> queryConditions, ComponentPermissionListDTO dto);


    /**
    * 更新
    */
    boolean updateById(Long id, ComponentPermissionDTO param);

    /**
    * 新增
    */
    boolean save(ComponentPermissionDTO param);

    boolean updateApiPermissions(Long id, LinkIdDTO convert);

    boolean updateStatus(Long id, BaseStatusDTO baseStatus);
}
